<?
//Überprüfen ob der Abruf über die Hauptseite erfolgt
if(!defined('InStern')) exit;
?>
<script type="text/javascript">
  function searchUser(objekt)
  {
    resObjekt.abort();
    resObjekt.open("get","ajax/searchuser.ajax.php?such="+objekt.value,true);
    resObjekt.onreadystatechange=suchErgebnis;
    resObjekt.send(null);
  }
  
  function suchErgebnis()
  {
    if(resObjekt.readyState==4)
    { 
      user=resObjekt.responseText.split('*|*');
      //alert ("länge "+user.length+" -> "+resObjekt.responseText);
      if(user.length==2) 
      {
        document.getElementById('ziel').value=user[1];
        document.getElementById('sonst').value='';
      }
      if(user.length<2) document.getElementById('sonst').innerHTML="Spieler existiert nicht";
      if(user.length>2)
      {
        var box="<select onchange=\"if(this.value!=''){document.getElementById('ziel').value=this.value; document.getElementById('sonst').innerHTML='';}\">";        
        box+="<option value=\"\">bitte wählen</option>";
        for(var i=1; user[i]; i++) box+="<option value=\""+user[i]+"\">"+user[i]+"</option>";
        box+="</select>";
        document.getElementById('sonst').innerHTML=box;        
      }
    }
  
  } 
</script>
<?

if(isset($_GET[show])) $_SESSION[highscore][show]=$_GET[show];
if(isset($_GET[filter])) $_SESSION[highscore][filter]=intval($_GET[filter]);
$show=$_SESSION[highscore][show];
$seite=$_GET[seite];
$filter=$_SESSION[highscore][filter];
$ansicht[]="Spieler";
$ansicht[]="Kommander";
$ansicht[]="Allianzen";
$ansicht[]="Fraktionen";

echo "<h1>Highscore</h1>
<center>
 <div style=\"margin:0px 120px; height:20px;\">";
 foreach($ansicht AS $key=>$value)
 {
   echo "
   <div class=\"tab\" onclick=\"location.href='$_SERVER[PHP_SELF]?page=highscore&show=$key';\">
    $value
   </div>";
 }
 echo "
 </div>";
if($show==0) //-----------------DIE SPIELERHIGHSCORE
{
  if($filter>0) $sql="AND Fraktion=$filter";
  else $sql="";
  $gesamt=$db->num_rows($db->query("SELECT * FROM spieler WHERE (Ende=0 OR Ende>".date(U).") AND Server=$spieler[Server] $sql;"));
  echo "
  <div style=\"width:600px; margin:20px;\"> 
   <br>
   <b>Platz:</b>
   <input type=\"text\" id=\"platz\" style=\"width:30px;\" value=\"".intval($_GET[platz])."\" onkeypress=\"if(event.keyCode==13) location.href='game.php?page=highscore&view=$view&platz='+this.value;\">
   <input type=\"button\" value=\"ok\" onclick=\"location.href='game.php?page=highscore&view=$view&platz='+document.getElementById('platz').value;\"/>
   <b>Spieler:</b>
   <input type=\"text\" style=\"width:80px\" value=\"".secstr($_GET[search])."\"id=\"ziel\" onchange=\"searchUser(this);\" onkeypress=\"if(event.keyCode==13) location.href='game.php?page=highscore&view=$view&search='+this.value;\">
   <span id=\"sonst\"></span>
   <input type=\"button\" value=\"ok\" onclick=\"location.href='game.php?page=highscore&view=$view&search='+document.getElementById('ziel').value;\" />
   <select onchange=\"location.href='game.php?page=highscore&filter='+this.value;\">
    <option value=\"0\">Alle Fraktionen</option>";
    foreach($config_fraktion AS $key=>$value)
	  if($value[name]!="")
        if($filter==$key) echo "<option value=\"$key\" selected=\"selected\">$value[name]</option>";
        else echo "<option value=\"$key\">$value[name]</option>";
    echo "
   </select>
    
  </div>";
  if(isset($_GET[platz]) AND $_GET[platz]<0) $_GET[platz]=1;
  //SQL-Anfrage zusammenbauen
  if(isset($_GET[search])) $jumpto=secstr($_GET[search]);
  elseif(isset($_GET[platz])) $seite=floor($_GET[platz]/$config[highscore][size]);
  elseif(isset($_GET[seite])) $seite=$_GET[seite];
  elseif($filter>0) echo "";
  else $jumpto=$spieler[Name];
  if(isset($jumpto))
  {
    //Punkte von Jumpto ermitteln
    if($filter>0) $sql="AND Fraktion=$filter";
    else $sql="";
    if($jump=$db->fetch_assoc($db->query("SELECT Gesamtpunkte,Id,Name FROM spieler WHERE (Ende=0 OR Ende>".date(U).") AND Server=$spieler[Server] $sql AND Name='".$db->real_escape_string($jumpto)."';")))
    {      
      $anzahl=$db->num_rows($db->query("SELECT id FROM spieler WHERE (Ende=0 OR Ende>".date(U).") AND Server=$spieler[Server] AND (Gesamtpunkte>$jump[Gesamtpunkte] OR (Gesamtpunkte=$jump[Gesamtpunkte] AND Id<$jump[Id]));"));
      $seite=floor($anzahl/$config[highscore][size]);
      if(isset($_GET[search])) $_GET[search]=$jump[Name];
    }
    else
      if(isset($_GET[search])) echo "<div class=\"info\">Der Spielername($jumpto) konnte nicht gefunden werden</div>";
  }
  $abfrage="SELECT * FROM spieler WHERE (Ende=0 OR Ende>".date(U).") AND Server='$spieler[Server]' ";
  if($filter>0) $abfrage.=" AND Fraktion=$filter ";
  $abfrage.="ORDER BY Gesamtpunkte DESC";
  $abfrage.=", Id ASC";
  $abfrage.=" Limit ".($seite*$config[highscore][size]).",".$config[highscore][size];
  $result=$db->query($abfrage);
  $anzahl=$db->num_rows($result);
  $a=$seite*$config[highscore][size];  
  
  echo leiste("game.php?page=highscore&view=$_SESSION[highscoreView]",ceil($gesamt/$config[highscore][size]),$seite)."  
  <table cellspacing=\"0\" class=\"tabelle\" width=\"80%\">
   <tr class=\"tabelle_head\">
    <th colspan=\"2\">Platz</th>
    <th>Spieler</th>
    <th>Allianz</th>
    <th>Gesamtpunkte</th>
   </tr>";
   while($row = $db->fetch_assoc($result)) 
   {
     $a++;
	 //Platzierung
	 if($a<$row[Platz]){ 
         $change="<img src=\"images/arrow_up.png\" alt=\"Position hat sich verbessert\"/>";
     }elseif($a>$row[Platz]){
         $change="<img src=\"images/arrow_down.png\" alt=\"Position hat sich verschlechtert\"/>";
	 }else{
		 $change="";
	 }
     //Noobschutz
     if($row[Gesamtpunkte]>$row[Noobschutz]) 
	     $schutz=$row[Gesamtpunkte];
     else $schutz=$row[Noobschutz];
     if($schutz<$config[noobschutz][basic] OR $schutz*$config[noobschutz][main]<$spieler[Gesamtpunkte]) $schutz="<img src=\"images/noobschutz.png\" height=\"13px\" alt=\"Spieler ist vor dir geschützt (Noobschutz)\" />";
     else $schutz="";
	 //Inakti
     if(date(U)-$row[Last]>$config[inaktiv][mark] AND date(U)>$row[Urlaub_Bis]) $inaktiv="<img src=\"images/inaktiv.png\" alt=\"inaktiv\" />";
     else $inaktiv="";
	 //Urlaub
     if(date(U)<$row[Urlaub_Bis]) $umode="<img src=\"images/urlaub.png\" alt=\"Urlaubsmodus: $row[Urlaub_Grund]\" />";
     else $umode="";
     if($row[Ban]>date(U)) $ban=" <font color=\"red\">-BAN-</font>";
     else $ban="";
	 //Allianz?
     if($row[Ally_Id]>0 AND $row[Ally_Rang]>0)
       $ally=" [<a href=\"$_SERVER[PHP_SELF]?page=allyinformation&ally=$row[Ally_Id]\">$row[Ally_Tag]</a>]";
     else 
       $ally="";
     if($row[Id]==$spieler[Id]) $class="aktiv";
     elseif($row[Name]==$_GET[search]) $class="aktiv";
     elseif($a==$_GET[platz]) $class="aktiv";
     else $class="";
     echo "
     <tr class=\"$class\">
      <th align=\"center\">$a.</th>
	  <th align=\"center\" width=\"10px\"><nobr>$change</nobr></th>
      <td align=\"center\"><a href=\"game.php?page=spielerinfo&id=$row[Id]\"><font color=\"".$config_fraktion[$row[Fraktion]][color]."\">$row[Name]</font></a>$ban $schutz $inaktiv $umode</td>
      <td align=\"center\">$ally</td>
      <td align=\"center\">$row[Gesamtpunkte]</td>
     </tr>";
   }
   echo "
  </table>";
  echo leiste("game.php?page=highscore&show=$show",ceil($gesamt/$config[highscore][size]),$seite);
}
if($show==1) //---------------Kommanderhighscore
{
  echo "
  <h2>Kommander Top".$config[highscore][size]."</h2>
  <table cellspacing=\"0\" class=\"tabelle\" width=\"80%\">
   <tr class=\"tabelle_head\">
    <th>Platz</th>
    <th>Kommander</th>
    <th>Level</th>
    <th>Spieler</th>
   </tr>";
   $a=0;
   $abfrage = "SELECT kommander.*, spieler.Name AS SpielerName FROM kommander, spieler WHERE kommander.Auftrag!='regiert' AND kommander.Spieler=spieler.Id AND spieler.Server='$spieler[Server]' ORDER BY Erfahrung DESC LIMIT 25";
   $result=$db->query($abfrage);
   $anzahl= $db->num_rows($result);
   while($row = $db->fetch_assoc($result)) 
   {
     $a++;
     echo "
     <tr>
      <th align=\"center\">$a.</th>
      <td align=\"center\">$row[Name]</td>
      <td align=\"center\">".calclevel($row[Erfahrung])."</td>
      <td align=\"center\">$row[SpielerName]</td>
     </tr>";
   }
   echo "
  </table>";
}
if($show==2)  //Alianzhighscore
{
  echo "
  <h2>Allianzhighscore</h2>
  <table cellspacing=\"0\" class=\"tabelle\" width=\"80%\">
   <tr class=\"tabelle_head\">
    <th>Platz</th>
    <th>Name</th>
    <th>Mitglieder</th>
    <th>Punkte</th>
   </tr>";
   $a=0;
   $result=$db->query("SELECT * FROM ally WHERE Server=$spieler[Server] ORDER BY Punkte DESC");
   while($ally=$db->fetch_assoc($result))
   {
     $a++;
     echo "
     <tr>
      <td align=\"center\">$a</td>
      <td align=\"center\"><a href=\"game.php?page=allyinformation&ally=$ally[Id]\">$ally[Name]</a></td>
      <td align=\"center\">$ally[Mitglieder]</td>
      <td align=\"center\">$ally[Punkte]</td>
     </tr>
   ";
   }
   echo "
   </table>";
}
if($show==3)
{
  echo "
  <h2>Fraktionshighscore</h2>
  <table cellspacing=\"0\" class=\"tabelle\" width=\"80%\">
   <tr class=\"tabelle_head\">
    <th>Platz</th>
    <th>Name</th>
    <th>Mitglieder</th>
    <th>Durchschnitt</th>
    <th>Punkte</th>
   </tr>
  ";
   $a=0;
   $abfrage = "SELECT Fraktion, COUNT(id) AS Anzahl, SUM(Planetenpunkte+Flottenpunkte) AS Gesamt FROM spieler WHERE Server=$config[Id] GROUP BY Fraktion ORDER BY Gesamt DESC;";
   $result=$db->query($abfrage);
   $anzahl= $db->num_rows($result);
   while($row = $db->fetch_assoc($result)) 
   {
     $a++;
     echo "
     <tr>
      <th align=\"center\">$a.</th>
      <td align=\"center\"><font color=\"".$config_fraktion[$row[Fraktion]][color]."\">".$config_fraktion[$row[Fraktion]][name]."</font></td>
      <td align=\"center\">$row[Anzahl]</td>
      <td align=\"center\">".round($row[Gesamt]/$row[Anzahl])."</td>
      <td align=\"center\">$row[Gesamt]</td>
     </tr>";
   }
   echo "
  </table>";

}

